package com.hsq.db137.demos.controller;

import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.hsq.db137.demos.config.R;
import com.hsq.db137.demos.entity.Menuinfo;
import com.hsq.db137.demos.seriver.MenuinfoService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;

import java.util.List;

/**
 * @Author: hsq加油
 * @CreateTime: 2024/12/24-18:02
 * @Description: TODO
 * @Version: 1.0
 */
@RestController
@CrossOrigin(origins = "*")
public class MenuinfoController {
    @Autowired
    private MenuinfoService menuinfoService;

   /* *//**
     * 查询一级菜单
     *
     * @param id 用户id
     * @return 菜单类
     *//*
    @GetMapping("selectListMenuinfoOne")
    public List<Menuinfo> selectListMenuinfoOne(int id) {
        return menuinfoService.selectListOne(id);
    }

    *//**
     * 查询二级菜单
     *
     * @param id 用户id
     * @return 菜单类
     *//*
    @GetMapping("selectListMenuinfoTwo")
    public List<Menuinfo> selectListMenuinfoTwo(int id) {
        return menuinfoService.selectListTwo(id);
    }*/

    /**
     * 查询全部
     */
    @GetMapping("selectListAll")
    public R selectListAll(String label) {
        List<Menuinfo> menuinfos = menuinfoService.selectListAll(label);
        return new R().add("menuinfos", menuinfos);
    }

    /**
     * 新增新的一级菜单
     *
     * @param menuinfo
     * @return
     */
    @PostMapping("insertMenuOne")
    String insertMenuOne(@RequestBody Menuinfo menuinfo) {
        return menuinfoService.insertMenuOne(menuinfo);
    }

    /**
     * 新增新的二级菜单
     *
     * @param menuinfo
     * @return
     */
    @PostMapping("insertMenuTwo")
    String insertMenuTwo(@RequestBody Menuinfo menuinfo) {
        return menuinfoService.insertMenuTwo(menuinfo);
    }

    /**
     * 删除一级菜单
     * @param id
     * @return
     */
    @GetMapping("deleteMenuOne")
    String deleteMenuOne(int id){
        return menuinfoService.deleteMenuOne(id);
    }
    /**
     * 删除二级菜单
     * @param id
     * @return
     */
    @GetMapping("deleteMenuTwo")
    String deleteMenuTwo(int id){
        return menuinfoService.deleteMenuTwo(id);
    }
    /**
     * 查询所属某一级菜单的所有二级菜单
     * @param parentId 一级菜单ID
     * @return 集合
     */
    @GetMapping("selectMenuTwo")
    R selectMenuTwo(int parentId){
        List<Menuinfo> menuinfos = menuinfoService.selectMenuTwo(parentId);
        return new R().add("menuinfos", menuinfos);
    }

    /**
     * 根据id查询
     * @param id 菜单id
     * @return
     */
    @GetMapping("selectMenuOne")
    R selectMenuOne(int id){
        Menuinfo menuinfo = menuinfoService.selectMenuOne(id);
        return new R().add("menuinfo", menuinfo);
    }

    /**
     * 根据id修改
     * @param menuinfo 对象
     * @return 提示语句
     */
    @PostMapping("updateMenuOne")
    String updateMenuOne(@RequestBody Menuinfo menuinfo){
        return menuinfoService.updateMenuOne(menuinfo);
    }



}
